package com.spring.definition;

/**
 * @ClassName BeanDefinition
 * @Description TODO: 手写模拟BeanDefinition生成
 * BeanDefinition表示Bean定义，BeanDefinition中存在很多属性用来描述一个Bean的特点。比如：
 * ● class，表示Bean类型
 * ● scope，表示Bean作用域，单例或原型等
 * ● lazyInit：表示Bean是否是懒加载
 * ● initMethodName：表示Bean初始化时要执行的方法
 * ● destroyMethodName：表示Bean销毁时要执行的方法
 * @Author lindipei
 * @Date 2023/10/19 18:05
 */

public class BeanDefinition {

    /**
     * Class对象
     */
    private Class type;

    /**
     * 范围(简单说就是对象在spring容器（IOC容器）中的生命周期，也可以理解为对象在spring容器中的创建方式。)
     */
    private String scope;
    public Class getType() {
        return type;
    }

    public void setType(Class type) {
        this.type = type;
    }

    public String getScope() {
        return scope;
    }

    public void setScope(String scope) {
        this.scope = scope;
    }

}
